SQL CROSS JOIN முக்கிய சொல்
CROSS JOIN முக்கிய சொல் இரண்டு அட்டவணைகளிலிருந்தும் (table1 மற்றும் table2) அனைத்து பதிவுகளையும் வழங்குகிறது.
MySQL CROSS JOIN
CROSS JOIN தொடரியல்
SELECT column_name(s)
FROM table1
CROSS JOIN table2;
குறிப்பு:
CROSS JOIN மிகப்பெரிய முடிவுத் தொகுப்புகளைத் திரும்பப் பெறக்கூடும்!
டெமோ தரவுத்தளம்
இந்த டுடோரியலில் நன்கு அறியப்பட்ட Northwind மாதிரி தரவுத்தளத்தைப் பயன்படுத்துவோம்.
"Customers" அட்டவணையிலிருந்து ஒரு தேர்வு கீழே உள்ளது:
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
| 3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
மற்றும் "Orders" அட்டவணையிலிருந்து ஒரு தேர்வு:
| OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
|---|---|---|---|---|
| 10308 | 2 | 7 | 1996-09-18 | 3 |
| 10309 | 37 | 3 | 1996-09-19 | 1 |
| 10310 | 77 | 8 | 1996-09-20 | 2 |
MySQL CROSS JOIN எடுத்துக்காட்டு
பின்வரும் SQL கூற்று அனைத்து வாடிக்கையாளர்களையும் மற்றும் அனைத்து ஆர்டர்களையும் தேர்ந்தெடுக்கிறது:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
CROSS JOIN Orders;
குறிப்பு:
CROSS JOIN முக்கிய சொல் மற்ற அட்டவணையில் பொருத்தம் இருந்தாலும் இல்லையென்றாலும் இரண்டு அட்டவணைகளிலிருந்தும் அனைத்து பொருந்தக்கூடிய பதிவுகளையும் வழங்குகிறது. எனவே, "Customers" இல் "Orders" இல் பொருத்தங்கள் இல்லாத வரிசைகள் இருந்தால், அல்லது "Orders" இல் "Customers" இல் பொருத்தங்கள் இல்லாத வரிசைகள் இருந்தால், அந்த வரிசைகளும் பட்டியலிடப்படும்.
நீங்கள் ஒரு WHERE கிளாஸைச் சேர்த்தால் (table1 மற்றும் table2 க்கு ஒரு உறவு இருந்தால்), CROSS JOIN ஆனது INNER JOIN கிளாஸின் அதே முடிவை உருவாக்கும்:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
CROSS JOIN Orders
WHERE Customers.CustomerID=Orders.CustomerID;
பயிற்சி
பின்வரும் SQL கூற்றைக் கவனியுங்கள்:
SELECT * FROM Orders CROSS JOIN Customers
Orders இல் 20 பதிவுகளும் Customers இல் 10 பதிவுகளும் இருந்தால், எத்தனை பதிவுகள் திரும்பப் பெறப்படும்?